package com.mall.service.impl;

import com.mall.dao.IRoleDao;
import com.mall.dao.IRolePermissionDao;
import com.mall.domain.Role;
import com.mall.service.IRoleService;
import org.apache.ibatis.annotations.Delete;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 角色的业务层接口实现类
 * @author : liangY
 * @date : 2021-01-09 11:10MySQL - malls@localhost
 */
@Service("roleService")
public class RoleServiceImpl implements IRoleService {

    @Autowired
    private IRoleDao roleDao;
    @Autowired
    private IRolePermissionDao rolePermissionDao;

    /**
     * 查询所有角色
     * @return
     */
    @Override
    public List<Role> findAll(){
        return roleDao.findAll();
    }

    /**
     * 删除角色权限通过id
     * @param role_id
     * @param permission_id
     * @return
     */
    @Override
    public Integer delById(Integer role_id,Integer permission_id){
        return rolePermissionDao.delById(role_id,permission_id);
    }

    /**
     * 更新角色
     *
     * @param role 角色实体类
     * @return
     */
    @Override
    public Integer update(Role role){
        return roleDao.update(role);
    }

    /**
     * 添加角色
     *
     * @param role 角色实体类
     * @return
     */
    @Override
    public Integer add(Role role){
        return roleDao.add(role);
    }

    /**
     * 删除角色
     *
     * @param id 角色编号
     * @return
     */
    @Override
    public Integer del(Integer id){

        return roleDao.del(id);
    }

    /**
     * 删除角色权限通过角色id
     * @param role_id
     * @return
     */
    @Override
    public Integer delByRoleId(Integer role_id){
        return rolePermissionDao.delByRoleId(role_id);
    }

    /**
     * 添加角色权限通过角色权限id
     * @param role_id
     * @param permission_id
     * @return
     */
    @Override
    public Integer addById(Integer role_id,Integer permission_id){
        return rolePermissionDao.addById(role_id,permission_id);
    }
}
